代码 > [记录]踩了golang的defer/recover的坑
2021-01-18
今天写代码的时候完了个花活,想复用recover,结果炸了……
体现在recover没起效,直接panic出来了。
查了下,defer里一旦再调用函数,原有上下文就变了,recover就失效了。
想想也有道理。
改了个骚气代码,解决了
q.Recover = func() {
defer n.Recover()
if r := recover(); r != nil {
panic(r)
}
}
点击登录